package logs

import (
	"gopkg.in/natefinch/lumberjack.v2"
	"io"
	"log"
	"os"
	"server/pkg/conf"
)

// InitLog 日志
// 日志
func InitLog(config *conf.Config) {
	// 创建一个文件名为app.log的日志文件，每天生成一个新的日志文件
	logger := &lumberjack.Logger{
		Filename:   config.LogConfig.Filename,   // 设置日志文件路径及名称
		MaxSize:    config.LogConfig.MaxSize,    // 单个日志文件最大容量（MB）
		MaxBackups: config.LogConfig.MaxBackups, // 保存的日志文件数目上限
		MaxAge:     config.LogConfig.MaxAge,     // 过期时间（天）
	}

	// 组合一下即可，os.Stdout代表标准输出流
	multiWriter := io.MultiWriter(os.Stdout, logger)

	// 将标准输出重定向到日志文件
	log.SetOutput(multiWriter)
}
